There are many software tools in which electronic designs can be built, debugged, and translated into hardware for field programmable gate arrays(FPGAs). Some, such as Altera's DSP Builder, Cadence's Signal Processing Worksystem, and Xilinx's System Generator for DSP, are high-level, abstract, visual environments. In these tools, flexible signal types, polymorphic blocks, automatic faithful generation of hardware, and straightforward analysis of results reduce the distance between algorithm and implementation, simplifying the job of the designer.
Ordinarily in such tools, a user assembles a design by hand, dragging blocks and connecting them with a mouse. Often this approach suitable, but there are circumstances when this approach is not. For example, designs sometimes contain thousands of blocks, and assembling by hand can be overwhelming. For some designs the collection of blocks or the ways in which blocks are connected need to change depending on the settings of parameters. It is also often desirable to use software to build designs. Finally, there though the number of blocks is large and connections are intricate.
A system and method that address the aforementioned problems, as well as other related problems, are therefore desirable.